package jschool.controladores.servidor;

import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

import javax.swing.JOptionPane;
import javax.swing.JTextField;

import jschool.manejadores.ManejadorDeDatos;
import jschool.ui.servidor.ventanas.VentanaLogin;

public class ControladorTeclasServidor implements KeyListener {

	private static ControladorTeclasServidor instancia; 
	private ManejadorDeDatos manejadorDeDatos;
	
	private ControladorTeclasServidor() {
		manejadorDeDatos = ManejadorDeDatos.getInstancia();
	}
	
	
	public static ControladorTeclasServidor getInstancia() {
		
		if( instancia == null ) {
			instancia = new ControladorTeclasServidor();
		}
		
		return instancia;
	}
	
	
	public void keyPressed( KeyEvent evento ) {
		String nombre = evento.getComponent().getName();
		
		if( nombre.equals( "loguear" ) ) {
			
		VentanaLogin ventanaLogin = VentanaLogin.getInstancia();
			
			if( evento.getKeyChar() == KeyEvent.VK_ENTER ) {
				String texto = ( ( JTextField )evento.getSource() ).getText();
			
				if( ! texto.trim().equals( "" ) ) {
				
					String usuario = ventanaLogin.getPanelLogin().getUsuario();
					String clave = ventanaLogin.getPanelLogin().getClave();
				
					if( ! usuario.equals( null ) &&  ! clave.equals( null ) ) {
					
						if( manejadorDeDatos.loguear( usuario, clave ) ) {
							JOptionPane.showMessageDialog( null, "Bienvenido " + usuario, 
									"Bienvenido", JOptionPane.INFORMATION_MESSAGE );
							
							ventanaLogin.dispose();
						}
						else {
							JOptionPane.showMessageDialog( null, "Nombre de Usuario o Clave inexistente.", "Datos Erroneos", 
									JOptionPane.ERROR_MESSAGE );
						}
					}
				}		
				else {
					JOptionPane.showMessageDialog( null, "No pueden haber campos vacios", "Campos vacios", 
						JOptionPane.ERROR_MESSAGE );
				}
			}
		}
	}
	
	public void keyReleased( KeyEvent evento ) {
		
		
	}

	
	public void keyTyped( KeyEvent evento ) {
		
		
	}

}
